// 事件 异步
// 订阅公众号  1000人
// setTimeout addEvemtListener  订阅关系
let eventEmiter = {
    list:{  // 所有订阅者
        'article':[]
    }, 
    // 订阅
    on(event,fn) {
        // 收集 没有把fn 立即执行
        this.list[event].push(fn);
    },
    // 发布文章 推送
    emit(event,title) {
        this.list[event].forEach(fn => {
            fn(title);
        })
    }
};

function user1(content) {
    console.log('用户1订阅了',content);
}
function user2(content) {
    console.log('用户2订阅了',content);
}
// 订阅 - 推送图文  异步的、
// 订阅
eventEmiter.on('article',user1);
eventEmiter.on('article',user2);
// emit 代表发布内容
setTimeout(() => {
    eventEmiter.emit('article','JavaScript 发布-订阅模式');
},2000)

setTimeout(() => {
    eventEmiter.emit('article','JavaScript 发布-订阅模式');
},10000)